Report generated on 06-May-2022 at 17:46:22 by pytest-html v1.21.1
| JAVA_HOME | /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home |
| Packages | {'pytest': '6.2.4', 'py': '1.10.0', 'pluggy': '0.13.1'} |
| Platform | Darwin-19.4.0-x86_64-i386-64bit |
| Plugins | {'Faker': '8.10.0', 'assume': '2.4.3', 'sugar': '0.9.4', 'dependency': '0.5.1', 'html': '1.21.1', 'rerunfailures': '10.1', 'repeat': '0.9.1', 'metadata': '1.8.0'} |
| Python | 3.7.3 |
69 tests ran in 1374.63 seconds.
(Un)check the boxes to filter the results.
64 passed, 54 skipped, 5 failed, 0 errors, 0 expected failures, 0 unexpected passes, 7 rerun| Result | 用例名称 | Test | Duration | Links |
|---|---|---|---|---|
| No results found. Try to check the filters | ||||
| Failed | WEB-后台注册机构客户 | TestCase/01_web/test_01_admin_register.py::TestRegister::test_002 | 30.92 | |
|
self = <test_01_admin_register.TestRegister object at 0x10e861160>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name="register", depends=["code_login"]) # @pytest.mark.skip(reason="注册产生数据") def test_002(self, drivers): """WEB-后台注册机构客户""" global REG_ACCOUNT AdminLogin(drivers).admin_lodin() register = RegisterPage(drivers) register.travel_dep_add() register.customer_type_tmc() company_name = register.full_customer_name() register.member_id() > register.customer_info() TestCase/01_web/test_01_admin_register.py:83: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ PageObject/WebObject/web_registerpage.py:115: in customer_info self.customer_address() PageObject/WebObject/web_registerpage.py:97: in customer_address self.is_click(self.num_replace(register["省"], 31)) page/webpage.py:82: in is_click self.find_element(locator).click() page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10e8099e8>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:24:25,584 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:24:25,584 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:24:25,584 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:24:25,718 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:24:25,719 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:24:25,719 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:24:25,837 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:24:25,837 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:24:25,838 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:24:26,377 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:24:26,378 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:24:26,378 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:24:26,583 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:24:26,584 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:24:26,584 [web_registerpage.py:18] 点击 运营管理 INFO 2022-05-06 17:24:26,584 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '运营管理')]") INFO 2022-05-06 17:24:27,105 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '运营管理')]") INFO 2022-05-06 17:24:27,105 [web_registerpage.py:23] 点击 商旅事业部--机构客户 INFO 2022-05-06 17:24:27,106 [webpage.py:48] 查找元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") INFO 2022-05-06 17:24:28,972 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") INFO 2022-05-06 17:24:28,972 [web_registerpage.py:28] 点击 新增按钮 INFO 2022-05-06 17:24:28,972 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'新增 ')]/..") INFO 2022-05-06 17:24:29,797 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'新增 ')]/..") INFO 2022-05-06 17:24:29,798 [web_registerpage.py:39] 选中客户类型--tmc INFO 2022-05-06 17:24:29,798 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpType']") INFO 2022-05-06 17:24:30,374 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpType']") INFO 2022-05-06 17:24:30,374 [webpage.py:48] 查找元素:('xpath', "//*[contains(text(),'TMC')]") INFO 2022-05-06 17:24:30,940 [webpage.py:84] 点击元素:('xpath', "//*[contains(text(),'TMC')]") INFO 2022-05-06 17:24:30,940 [web_registerpage.py:51] 输入客户全称 INFO 2022-05-06 17:24:30,940 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='nameCn']") INFO 2022-05-06 17:24:31,047 [webpage.py:78] 输入文本:彩虹信息有限公司 INFO 2022-05-06 17:24:31,060 [web_registerpage.py:64] 输入会员号 INFO 2022-05-06 17:24:31,060 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='code']") INFO 2022-05-06 17:24:31,154 [webpage.py:78] 输入文本:TH3341357121 INFO 2022-05-06 17:24:31,164 [web_registerpage.py:110] 填写客户信息 INFO 2022-05-06 17:24:31,164 [web_registerpage.py:71] 选择客户规模 INFO 2022-05-06 17:24:31,165 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpSize']") INFO 2022-05-06 17:24:31,722 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpSize']") INFO 2022-05-06 17:24:31,722 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:32,277 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:32,277 [web_registerpage.py:77] 选择业务状态 INFO 2022-05-06 17:24:32,278 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpBizStatus']") INFO 2022-05-06 17:24:32,856 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpBizStatus']") INFO 2022-05-06 17:24:32,856 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:33,412 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:33,413 [web_registerpage.py:83] 选择所属行业 INFO 2022-05-06 17:24:33,413 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpIndustry']") INFO 2022-05-06 17:24:33,986 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpIndustry']") INFO 2022-05-06 17:24:33,987 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:34,537 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:34,537 [web_registerpage.py:89] 选择信用等级 INFO 2022-05-06 17:24:34,537 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpCreditRating']") INFO 2022-05-06 17:24:35,109 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpCreditRating']") INFO 2022-05-06 17:24:35,109 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:35,659 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:35,660 [web_registerpage.py:95] 选择省-市-区 INFO 2022-05-06 17:24:35,660 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='location']") INFO 2022-05-06 17:24:36,257 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='location']") INFO 2022-05-06 17:24:36,257 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') INFO 2022-05-06 17:24:36,822 [webpage.py:84] 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') INFO 2022-05-06 17:24:36,822 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') INFO 2022-05-06 17:24:37,378 [webpage.py:84] 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') INFO 2022-05-06 17:24:37,378 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') INFO 2022-05-06 17:24:37,930 [webpage.py:84] 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') INFO 2022-05-06 17:24:37,930 [web_registerpage.py:103] 输入具体地址 INFO 2022-05-06 17:24:37,931 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='address']") INFO 2022-05-06 17:24:38,037 [webpage.py:78] 输入文本:东莞街R座 INFO 2022-05-06 17:24:38,052 [web_registerpage.py:147] 填写服务信息 INFO 2022-05-06 17:24:38,052 [web_registerpage.py:119] 选择销售经理 INFO 2022-05-06 17:24:38,052 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:38,623 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:38,624 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') INFO 2022-05-06 17:24:39,194 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') INFO 2022-05-06 17:24:39,194 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:39,756 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:39,757 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') INFO 2022-05-06 17:24:40,318 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') INFO 2022-05-06 17:24:40,318 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:40,835 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:40,835 [web_registerpage.py:126] 选择客服经理 INFO 2022-05-06 17:24:40,835 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:41,409 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:41,410 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:41,973 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:41,974 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:42,538 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:42,538 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:43,098 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:43,099 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:43,618 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:43,619 [web_registerpage.py:133] 选择结算经理 INFO 2022-05-06 17:24:43,619 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:44,195 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:44,196 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:44,775 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:44,775 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:45,341 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:45,342 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:45,903 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:45,903 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:46,418 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:46,418 [web_registerpage.py:140] 选择维护经理 INFO 2022-05-06 17:24:46,418 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:46,996 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:46,996 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:47,558 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:47,558 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:48,118 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:48,118 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:48,677 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:48,677 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:49,192 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:49,193 [web_registerpage.py:155] 输入联系人姓名 INFO 2022-05-06 17:24:49,193 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='contactName']") INFO 2022-05-06 17:24:49,713 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='contactName']") INFO 2022-05-06 17:24:49,803 [webpage.py:78] 输入文本:谢飞 INFO 2022-05-06 17:24:49,812 [web_registerpage.py:163] 输入联系人手机号和邮箱 INFO 2022-05-06 17:24:49,813 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='mobile']") INFO 2022-05-06 17:24:50,334 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='mobile']") INFO 2022-05-06 17:24:50,424 [webpage.py:78] 输入文本:11123002647 INFO 2022-05-06 17:24:50,424 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='email']") INFO 2022-05-06 17:24:50,941 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='email']") INFO 2022-05-06 17:24:51,048 [webpage.py:78] 输入文本:11123002647@tehang.com INFO 2022-05-06 17:24:51,073 [web_registerpage.py:176] 开通产品 INFO 2022-05-06 17:24:51,073 [webpage.py:48] 查找元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:51,592 [webpage.py:48] 查找元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:52,163 [webpage.py:84] 点击元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:52,163 [webpage.py:58] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item') INFO 2022-05-06 17:24:52,181 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:52,750 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:52,751 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:53,308 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:53,309 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:53,867 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:53,867 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') INFO 2022-05-06 17:24:54,428 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') INFO 2022-05-06 17:24:54,428 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:54,988 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:54,988 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:55,542 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:55,543 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:56,094 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:56,094 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:56,650 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:56,650 [webpage.py:48] 查找元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:57,171 [webpage.py:97] js注入方式点击元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:57,171 [web_registerpage.py:187] 提交机构数据 INFO 2022-05-06 17:24:57,171 [webpage.py:48] 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") INFO 2022-05-06 17:24:57,693 [webpage.py:48] 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") INFO 2022-05-06 17:24:58,274 [webpage.py:84] 点击元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") INFO 2022-05-06 17:25:04,276 [web_registerpage.py:199] 获取机构名称 INFO 2022-05-06 17:25:04,277 [webpage.py:48] 查找元素:('xpath', "//h1[@class='page-header__title ng-star-inserted']") INFO 2022-05-06 17:25:04,301 [webpage.py:89] 获取文本:新增机构客户 ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_registerpage.py:18 点击 运营管理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '运营管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '运营管理')]") [32mINFO [0m logger:web_registerpage.py:23 点击 商旅事业部--机构客户 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") [32mINFO [0m logger:web_registerpage.py:28 点击 新增按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'新增 ')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'新增 ')]/..") [32mINFO [0m logger:web_registerpage.py:39 选中客户类型--tmc [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpType']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpType']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[contains(text(),'TMC')]") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[contains(text(),'TMC')]") [32mINFO [0m logger:web_registerpage.py:51 输入客户全称 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='nameCn']") [32mINFO [0m logger:webpage.py:78 输入文本:彩虹信息有限公司 [32mINFO [0m logger:web_registerpage.py:64 输入会员号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='code']") [32mINFO [0m logger:webpage.py:78 输入文本:TH3341357121 [32mINFO [0m logger:web_registerpage.py:110 填写客户信息 [32mINFO [0m logger:web_registerpage.py:71 选择客户规模 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpSize']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpSize']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:web_registerpage.py:77 选择业务状态 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpBizStatus']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpBizStatus']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:web_registerpage.py:83 选择所属行业 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpIndustry']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpIndustry']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:web_registerpage.py:89 选择信用等级 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpCreditRating']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpCreditRating']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:web_registerpage.py:95 选择省-市-区 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='location']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='location']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') [32mINFO [0m logger:web_registerpage.py:103 输入具体地址 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='address']") [32mINFO [0m logger:webpage.py:78 输入文本:东莞街R座 [32mINFO [0m logger:web_registerpage.py:147 填写服务信息 [32mINFO [0m logger:web_registerpage.py:119 选择销售经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:web_registerpage.py:126 选择客服经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:web_registerpage.py:133 选择结算经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:web_registerpage.py:140 选择维护经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:web_registerpage.py:155 输入联系人姓名 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='contactName']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='contactName']") [32mINFO [0m logger:webpage.py:78 输入文本:谢飞 [32mINFO [0m logger:web_registerpage.py:163 输入联系人手机号和邮箱 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='mobile']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='mobile']") [32mINFO [0m logger:webpage.py:78 输入文本:11123002647 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='email']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='email']") [32mINFO [0m logger:webpage.py:78 输入文本:11123002647@tehang.com [32mINFO [0m logger:web_registerpage.py:176 开通产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:web_registerpage.py:187 提交机构数据 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") [32mINFO [0m logger:web_registerpage.py:199 获取机构名称 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//h1[@class='page-header__title ng-star-inserted']") [32mINFO [0m logger:webpage.py:89 获取文本:新增机构客户----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:25:05,650 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:25:05,651 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:25:05,651 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:25:05,856 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:25:05,856 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:25:05,856 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:25:05,987 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:25:05,987 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:25:05,987 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:25:06,531 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:25:06,531 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:25:06,532 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:25:06,555 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:25:06,555 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:25:06,555 [web_registerpage.py:18] 点击 运营管理 INFO 2022-05-06 17:25:06,555 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '运营管理')]") INFO 2022-05-06 17:25:07,072 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '运营管理')]") INFO 2022-05-06 17:25:07,072 [web_registerpage.py:23] 点击 商旅事业部--机构客户 INFO 2022-05-06 17:25:07,073 [webpage.py:48] 查找元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") INFO 2022-05-06 17:25:07,644 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") INFO 2022-05-06 17:25:07,645 [web_registerpage.py:28] 点击 新增按钮 INFO 2022-05-06 17:25:07,646 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'新增 ')]/..") INFO 2022-05-06 17:25:08,320 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'新增 ')]/..") INFO 2022-05-06 17:25:08,320 [web_registerpage.py:39] 选中客户类型--tmc INFO 2022-05-06 17:25:08,321 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpType']") INFO 2022-05-06 17:25:08,900 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpType']") INFO 2022-05-06 17:25:08,900 [webpage.py:48] 查找元素:('xpath', "//*[contains(text(),'TMC')]") INFO 2022-05-06 17:25:09,460 [webpage.py:84] 点击元素:('xpath', "//*[contains(text(),'TMC')]") INFO 2022-05-06 17:25:09,460 [web_registerpage.py:51] 输入客户全称 INFO 2022-05-06 17:25:09,460 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='nameCn']") INFO 2022-05-06 17:25:09,568 [webpage.py:78] 输入文本:维涛传媒有限公司 INFO 2022-05-06 17:25:09,580 [web_registerpage.py:64] 输入会员号 INFO 2022-05-06 17:25:09,581 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='code']") INFO 2022-05-06 17:25:09,676 [webpage.py:78] 输入文本:TH3448849579 INFO 2022-05-06 17:25:09,684 [web_registerpage.py:110] 填写客户信息 INFO 2022-05-06 17:25:09,684 [web_registerpage.py:71] 选择客户规模 INFO 2022-05-06 17:25:09,685 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpSize']") INFO 2022-05-06 17:25:10,242 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpSize']") INFO 2022-05-06 17:25:10,242 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:25:10,799 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:25:10,799 [web_registerpage.py:77] 选择业务状态 INFO 2022-05-06 17:25:10,799 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpBizStatus']") INFO 2022-05-06 17:25:11,365 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpBizStatus']") INFO 2022-05-06 17:25:11,365 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:25:11,916 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:25:11,916 [web_registerpage.py:83] 选择所属行业 INFO 2022-05-06 17:25:11,917 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpIndustry']") INFO 2022-05-06 17:25:12,491 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpIndustry']") INFO 2022-05-06 17:25:12,492 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[9]') INFO 2022-05-06 17:25:13,056 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[9]') INFO 2022-05-06 17:25:13,058 [web_registerpage.py:89] 选择信用等级 INFO 2022-05-06 17:25:13,058 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpCreditRating']") INFO 2022-05-06 17:25:13,625 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpCreditRating']") INFO 2022-05-06 17:25:13,625 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:25:14,177 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:25:14,177 [web_registerpage.py:95] 选择省-市-区 INFO 2022-05-06 17:25:14,177 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='location']") INFO 2022-05-06 17:25:14,752 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='location']") INFO 2022-05-06 17:25:14,752 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[15]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_registerpage.py:18 点击 运营管理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '运营管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '运营管理')]") [32mINFO [0m logger:web_registerpage.py:23 点击 商旅事业部--机构客户 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") [32mINFO [0m logger:web_registerpage.py:28 点击 新增按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'新增 ')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'新增 ')]/..") [32mINFO [0m logger:web_registerpage.py:39 选中客户类型--tmc [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpType']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpType']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[contains(text(),'TMC')]") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[contains(text(),'TMC')]") [32mINFO [0m logger:web_registerpage.py:51 输入客户全称 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='nameCn']") [32mINFO [0m logger:webpage.py:78 输入文本:维涛传媒有限公司 [32mINFO [0m logger:web_registerpage.py:64 输入会员号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='code']") [32mINFO [0m logger:webpage.py:78 输入文本:TH3448849579 [32mINFO [0m logger:web_registerpage.py:110 填写客户信息 [32mINFO [0m logger:web_registerpage.py:71 选择客户规模 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpSize']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpSize']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:web_registerpage.py:77 选择业务状态 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpBizStatus']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpBizStatus']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:web_registerpage.py:83 选择所属行业 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpIndustry']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpIndustry']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[9]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[9]') [32mINFO [0m logger:web_registerpage.py:89 选择信用等级 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpCreditRating']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpCreditRating']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:web_registerpage.py:95 选择省-市-区 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='location']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='location']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[15]') | ||||
| Failed | WEB-国内机票--预订 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_001 | 38.43 | |
|
self = <test_03_web_flight.TestFlight object at 0x10e865eb8>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")>, flight_stub = None close_authorization = None @pytest.mark.dependency(name="book_flight") def test_001(self, drivers, flight_stub, close_authorization): """WEB-国内机票--预订""" > assert self.book_flight(drivers) TestCase/01_web/test_03_web_flight.py:101: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ TestCase/01_web/test_03_web_flight.py:43: in book_flight assert "支付完成" in book.book_one_way(departure_city, arrive_city, check) PageObject/WebObject/web_bookflightpage.py:247: in book_one_way self.place_order(departure_city, arrive_city, one_person) PageObject/WebObject/web_bookflightpage.py:237: in place_order self.click_book() PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10e8494e0>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ---------------------------- Captured stderr setup ----------------------------- INFO 2022-05-06 17:27:15,561 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:27:15,561 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:27:15,562 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:27:15,740 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:27:15,741 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:27:15,741 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:27:15,839 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:27:15,839 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:27:15,839 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:27:16,361 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:27:16,361 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:27:16,361 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:27:16,379 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:27:16,379 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:27:16,379 [web_systemmanagepage.py:90] 将国内机票测试桩全配置为返回成功结果 INFO 2022-05-06 17:27:16,379 [web_systemmanagepage.py:12] 到国内机票测试桩配置页面 INFO 2022-05-06 17:27:16,379 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:27:16,906 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:27:16,906 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:27:17,432 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:27:17,996 [webpage.py:97] js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:27:17,996 [webpage.py:58] 查找元素:('xpath', '//flight-stub-config//nz-select') INFO 2022-05-06 17:27:18,072 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:18,626 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:18,669 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,185 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,230 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,747 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,789 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,304 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,344 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,868 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,909 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:21,430 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:21,470 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:21,986 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:22,026 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:22,542 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:22,582 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,109 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,149 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,661 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,662 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:27:24,181 [web_systemmanagepage.py:85] 提交配置 INFO 2022-05-06 17:27:24,181 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:27:24,715 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:27:25,046 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:27:25,046 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:27:25,046 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:27:25,305 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:27:25,306 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:27:25,306 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:27:25,379 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:27:25,379 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:27:25,379 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:27:25,900 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:27:25,900 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:27:25,901 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:27:25,932 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:27:25,932 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:27:25,932 [web_authorizationsettingpage.py:15] 首页进入事前授权设置页面 INFO 2022-05-06 17:27:25,932 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:27:26,462 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:27:26,462 [webpage.py:48] 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:27:27,005 [webpage.py:97] js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:27:27,005 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:27:27,539 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:27:28,546 [web_authorizationsettingpage.py:23] 点击设置授权规则按钮 INFO 2022-05-06 17:27:28,546 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") ------------------------------ Captured log setup ------------------------------ [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_systemmanagepage.py:90 将国内机票测试桩全配置为返回成功结果 [32mINFO [0m logger:web_systemmanagepage.py:12 到国内机票测试桩配置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', '//flight-stub-config//nz-select') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:web_systemmanagepage.py:85 提交配置 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_authorizationsettingpage.py:15 首页进入事前授权设置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:web_authorizationsettingpage.py:23 点击设置授权规则按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..")---------------------------- Captured stderr setup ----------------------------- INFO 2022-05-06 17:28:11,298 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:28:11,298 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:28:11,298 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:28:11,578 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:28:11,579 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:28:11,579 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:28:11,708 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:28:11,708 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:28:11,709 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:12,247 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:12,248 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:28:12,248 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:28:12,393 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:28:12,394 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:28:12,394 [web_authorizationsettingpage.py:15] 首页进入事前授权设置页面 INFO 2022-05-06 17:28:12,394 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:28:12,953 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:28:12,953 [webpage.py:48] 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:28:13,570 [webpage.py:97] js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:28:13,570 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:28:14,159 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:28:15,164 [web_authorizationsettingpage.py:23] 点击设置授权规则按钮 INFO 2022-05-06 17:28:15,164 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") INFO 2022-05-06 17:28:15,718 [webpage.py:84] 点击元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") INFO 2022-05-06 17:28:15,719 [web_authorizationsettingpage.py:28] 判断授权管控是否开始 INFO 2022-05-06 17:28:15,719 [webpage.py:48] 查找元素:('xpath', "//nz-switch[@formcontrolname='authorizeEnabled']/button[1]") ------------------------------ Captured log setup ------------------------------ [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_authorizationsettingpage.py:15 首页进入事前授权设置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:web_authorizationsettingpage.py:23 点击设置授权规则按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") [32mINFO [0m logger:web_authorizationsettingpage.py:28 判断授权管控是否开始 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//nz-switch[@formcontrolname='authorizeEnabled']/button[1]")----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:28:16,072 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:28:16,073 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:28:16,073 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:28:16,294 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:28:16,294 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:28:16,294 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:28:16,423 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:28:16,424 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:28:16,424 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:16,955 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:16,955 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:28:16,955 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:28:17,027 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:28:17,028 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:28:17,028 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:28:17,028 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:28:17,028 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:28:17,306 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:28:18,087 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:28:19,092 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:28:19,093 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:28:19,625 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:28:19,626 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:28:19,626 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:28:19,626 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:28:19,638 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:28:19,768 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:28:19,768 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:20,334 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:20,335 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:28:20,335 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:28:20,335 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:28:20,343 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:28:20,424 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:28:20,424 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:20,943 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:20,944 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:28:20,944 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:28:20,944 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:28:21,023 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:28:21,024 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:28:21,024 [web_bookflightpage.py:89] 日期:2022年6月14日 INFO 2022-05-06 17:28:21,024 [webpage.py:48] 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:28:21,552 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:28:21,552 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年6月14日']") INFO 2022-05-06 17:28:22,082 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年6月14日']") INFO 2022-05-06 17:28:23,087 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:28:23,088 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:28:23,613 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:28:23,614 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:28:23,614 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年6月14日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年6月14日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年6月14日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Failed | WEB-国内机票--预订往返程机票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_011 | 38.40 | |
|
self = <test_03_web_flight.TestFlight object at 0x10fadb6a0>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name="round_book") def test_011(self, drivers): """WEB-国内机票--预订往返程机票""" global ORDER_ID CustomerLogin(drivers).customer_login() book = BookFlightPage(drivers) > assert "支付完成" in book.book_round_trip(departure_city="深圳", arrive_city="北京") TestCase/01_web/test_03_web_flight.py:203: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ PageObject/WebObject/web_bookflightpage.py:259: in book_round_trip self.click_book() # 去程 PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10fad7d30>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:28:55,138 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:28:55,139 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:28:55,139 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:28:55,409 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:28:55,410 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:28:55,410 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:28:55,542 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:28:55,543 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:28:55,543 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:56,075 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:56,075 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:28:56,076 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:28:56,156 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:28:56,156 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:28:56,156 [web_bookflightpage.py:252] 预订往返机票 INFO 2022-05-06 17:28:56,156 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:28:56,416 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:28:57,179 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:28:58,180 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") INFO 2022-05-06 17:28:58,718 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") INFO 2022-05-06 17:28:58,718 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:28:58,719 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:28:58,719 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:28:58,731 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:28:58,844 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:28:58,844 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:59,395 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:59,395 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:28:59,396 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:28:59,396 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:28:59,402 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:28:59,483 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:28:59,483 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:00,001 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:00,001 [web_bookflightpage.py:102] 选中往返时间 INFO 2022-05-06 17:29:00,001 [web_bookflightpage.py:123] 生成随机日期 INFO 2022-05-06 17:29:00,002 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:29:00,002 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:29:00,002 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:29:00,080 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月24日']") INFO 2022-05-06 17:29:00,612 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月24日']") INFO 2022-05-06 17:29:00,678 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月26日']") INFO 2022-05-06 17:29:01,212 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月26日']") INFO 2022-05-06 17:29:01,213 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:29:01,213 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:29:01,739 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:29:01,739 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:29:01,739 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:252 预订往返机票 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:102 选中往返时间 [32mINFO [0m logger:web_bookflightpage.py:123 生成随机日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月24日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月24日']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月26日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月26日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]')----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:29:33,257 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:29:33,257 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:29:33,257 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:29:33,466 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:29:33,467 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:29:33,467 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:29:33,566 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:29:33,567 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:29:33,567 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:29:34,094 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:29:34,095 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:29:34,095 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:29:34,144 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:29:34,144 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:29:34,144 [web_bookflightpage.py:252] 预订往返机票 INFO 2022-05-06 17:29:34,144 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:29:34,155 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:29:35,144 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:29:36,151 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") INFO 2022-05-06 17:29:36,685 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") INFO 2022-05-06 17:29:36,685 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:29:36,685 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:29:36,685 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:29:36,698 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:29:36,824 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:29:36,824 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:37,378 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:37,379 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:29:37,379 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:29:37,379 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:29:37,389 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:29:37,470 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:29:37,471 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:37,990 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:37,990 [web_bookflightpage.py:102] 选中往返时间 INFO 2022-05-06 17:29:37,991 [web_bookflightpage.py:123] 生成随机日期 INFO 2022-05-06 17:29:37,991 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:29:37,991 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:29:37,991 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:29:38,070 [webpage.py:48] 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:29:38,594 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:29:38,594 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年6月6日']") INFO 2022-05-06 17:29:39,124 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年6月6日']") INFO 2022-05-06 17:29:39,186 [webpage.py:48] 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:29:39,712 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:29:39,713 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年6月8日']") INFO 2022-05-06 17:29:40,243 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年6月8日']") INFO 2022-05-06 17:29:40,243 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:29:40,244 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:29:40,770 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:29:40,771 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:29:40,771 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:252 预订往返机票 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:102 选中往返时间 [32mINFO [0m logger:web_bookflightpage.py:123 生成随机日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年6月6日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年6月6日']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年6月8日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年6月8日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Failed | WEB-国内机票--预订多人单程机票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_016 | 38.44 | |
|
self = <test_03_web_flight.TestFlight object at 0x10fade9e8>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name="persons") def test_016(self, drivers): """WEB-国内机票--预订多人单程机票""" > assert self.book_flight(drivers,check=False), "预订机票失败" TestCase/01_web/test_03_web_flight.py:257: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ TestCase/01_web/test_03_web_flight.py:43: in book_flight assert "支付完成" in book.book_one_way(departure_city, arrive_city, check) PageObject/WebObject/web_bookflightpage.py:247: in book_one_way self.place_order(departure_city, arrive_city, one_person) PageObject/WebObject/web_bookflightpage.py:237: in place_order self.click_book() PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10fa38518>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:30:12,271 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:30:12,272 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:30:12,272 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:30:12,564 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:30:12,564 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:30:12,564 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:30:12,697 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:30:12,698 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:30:12,698 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:30:13,233 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:30:13,233 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:30:13,233 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:30:13,275 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:30:13,275 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:30:13,276 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:30:13,276 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:30:13,276 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:30:13,559 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:30:14,333 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:30:15,339 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:30:15,339 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:30:15,871 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:30:15,871 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:30:15,871 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:30:15,871 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:30:15,884 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:30:15,990 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:30:15,991 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:16,565 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:16,565 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:30:16,566 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:30:16,566 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:30:16,574 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:30:16,652 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:30:16,653 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:17,169 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:17,169 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:30:17,170 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:30:17,170 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:30:17,248 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:30:17,249 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:30:17,249 [web_bookflightpage.py:89] 日期:2022年5月16日 INFO 2022-05-06 17:30:17,249 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月16日']") INFO 2022-05-06 17:30:17,781 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月16日']") INFO 2022-05-06 17:30:18,786 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:30:18,787 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:30:19,313 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:30:19,314 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:30:19,314 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年5月16日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月16日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月16日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]')----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:30:50,807 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:30:50,808 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:30:50,808 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:30:51,041 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:30:51,042 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:30:51,042 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:30:51,180 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:30:51,180 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:30:51,180 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:30:51,710 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:30:51,711 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:30:51,712 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:30:51,806 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:30:51,806 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:30:51,806 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:30:51,806 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:30:51,807 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:30:52,065 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:30:52,816 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:30:53,821 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:30:53,822 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:30:54,353 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:30:54,354 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:30:54,354 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:30:54,354 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:30:54,366 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:30:54,497 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:30:54,498 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:55,061 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:55,061 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:30:55,062 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:30:55,062 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:30:55,070 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:30:55,150 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:30:55,150 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:55,669 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:55,669 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:30:55,669 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:30:55,670 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:30:55,746 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:30:55,746 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:30:55,746 [web_bookflightpage.py:89] 日期:2022年6月11日 INFO 2022-05-06 17:30:55,746 [webpage.py:48] 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:30:56,279 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") INFO 2022-05-06 17:30:56,279 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年6月11日']") INFO 2022-05-06 17:30:56,808 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年6月11日']") INFO 2022-05-06 17:30:57,808 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:30:57,809 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:30:58,339 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:30:58,339 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:30:58,340 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年6月11日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@title='下个月 (翻页下键)']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年6月11日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年6月11日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Failed | WEB-授权--国内机票预订 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_003 | 17.98 | |
|
self = <test_04_web_flight_authorization.TestAuthorization object at 0x10e849a58>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")>, flight_stub = None @pytest.mark.dependency(name="book_flight") def test_003(self, drivers, flight_stub): """WEB-授权--国内机票预订""" > assert self.book_flight(drivers) TestCase/01_web/test_04_web_flight_authorization.py:144: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ TestCase/01_web/test_04_web_flight_authorization.py:31: in book_flight assert "支付完成" in book.book_one_way(departure_city, arrive_city) PageObject/WebObject/web_bookflightpage.py:247: in book_one_way self.place_order(departure_city, arrive_city, one_person) PageObject/WebObject/web_bookflightpage.py:237: in place_order self.click_book() PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:71: in until value = method(self._driver) ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/expected_conditions.py:64: in __call__ return _find_element(driver, self.locator) ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/expected_conditions.py:415: in _find_element raise e ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/expected_conditions.py:411: in _find_element return driver.find_element(*by) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py:978: in find_element 'value': value})['value'] ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py:321: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x10e78e240> response = {'status': 500, 'value': '{"value":{"error":"disconnected","message":"disconnected: not connected to DevTools\\n (Ses...fff6d968109 _pthread_start + 148\\n27 libsystem_pthread.dylib 0x00007fff6d963b8b thread_start + 15\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.WebDriverException: Message: disconnected: not connected to DevTools E (Session info: chrome=101.0.4951.54) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py:242: WebDriverException ---------------------------- Captured stderr setup ----------------------------- INFO 2022-05-06 17:31:43,144 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:31:43,144 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:31:43,144 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:31:43,382 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:31:43,383 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:31:43,383 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:31:43,495 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:31:43,496 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:31:43,496 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:31:44,035 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:31:44,035 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:31:44,035 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:31:44,060 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:31:44,060 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:31:44,060 [web_systemmanagepage.py:90] 将国内机票测试桩全配置为返回成功结果 INFO 2022-05-06 17:31:44,060 [web_systemmanagepage.py:12] 到国内机票测试桩配置页面 INFO 2022-05-06 17:31:44,060 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:31:44,579 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:31:44,580 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:31:45,100 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:31:45,669 [webpage.py:97] js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:31:45,670 [webpage.py:58] 查找元素:('xpath', '//flight-stub-config//nz-select') INFO 2022-05-06 17:31:45,731 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,254 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,300 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,818 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,862 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,376 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,418 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,933 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,974 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:48,491 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:48,534 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,052 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,091 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,605 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,646 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,165 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,209 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,724 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,776 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:51,288 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:51,288 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:31:51,811 [web_systemmanagepage.py:85] 提交配置 INFO 2022-05-06 17:31:51,812 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:31:52,335 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..") ------------------------------ Captured log setup ------------------------------ [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_systemmanagepage.py:90 将国内机票测试桩全配置为返回成功结果 [32mINFO [0m logger:web_systemmanagepage.py:12 到国内机票测试桩配置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', '//flight-stub-config//nz-select') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:web_systemmanagepage.py:85 提交配置 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..")----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:31:52,672 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:31:52,672 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:31:52,672 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:31:52,917 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:31:52,917 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:31:52,917 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:31:53,030 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:31:53,030 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:31:53,031 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:31:53,564 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:31:53,564 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:31:53,565 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:31:53,629 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:31:53,630 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:31:53,630 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:31:53,630 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:31:53,630 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:31:53,928 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:31:54,688 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:31:55,694 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:31:55,694 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:31:56,229 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:31:56,229 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:31:56,229 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:31:56,229 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:31:56,242 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:31:56,364 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:31:56,364 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:56,912 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:56,912 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:31:56,912 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:31:56,912 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:31:56,920 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:31:56,999 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:31:56,999 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:57,520 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:57,520 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:31:57,521 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:31:57,521 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:31:57,600 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:31:57,600 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:31:57,600 [web_bookflightpage.py:89] 日期:2022年5月25日 INFO 2022-05-06 17:31:57,601 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月25日']") INFO 2022-05-06 17:31:58,134 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月25日']") INFO 2022-05-06 17:31:59,139 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:31:59,139 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:31:59,665 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:31:59,665 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:31:59,665 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年5月25日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月25日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月25日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]')----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:32:31,144 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:32:31,144 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:32:31,144 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:32:31,393 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:32:31,393 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:32:31,393 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:32:31,516 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:32:31,517 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:32:31,517 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:32:32,051 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:32:32,051 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:32:32,051 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:32:32,124 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:32:32,124 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:32:32,124 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:32:32,125 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:32:32,125 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:32:32,403 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:32:33,155 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:32:34,159 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:32:34,161 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:32:34,694 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:32:34,694 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:32:34,695 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:32:34,695 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:32:34,707 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:32:34,839 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:32:34,839 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:32:35,401 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:32:35,401 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:32:35,402 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:32:35,402 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:32:35,410 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:32:35,491 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:32:35,491 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:32:36,008 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:32:36,009 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:32:36,009 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:32:36,009 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:32:36,089 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:32:36,089 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:32:36,089 [web_bookflightpage.py:89] 日期:2022年5月25日 INFO 2022-05-06 17:32:36,090 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月25日']") INFO 2022-05-06 17:32:36,618 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月25日']") INFO 2022-05-06 17:32:37,622 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:32:37,622 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:32:38,151 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:32:38,151 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:32:38,151 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年5月25日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月25日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月25日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Rerun | WEB-后台注册机构客户 | TestCase/01_web/test_01_admin_register.py::TestRegister::test_002 | 55.96 | |
|
self = <test_01_admin_register.TestRegister object at 0x10e78ecc0>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name="register", depends=["code_login"]) # @pytest.mark.skip(reason="注册产生数据") def test_002(self, drivers): """WEB-后台注册机构客户""" global REG_ACCOUNT AdminLogin(drivers).admin_lodin() register = RegisterPage(drivers) register.travel_dep_add() register.customer_type_tmc() company_name = register.full_customer_name() register.member_id() register.customer_info() register.specific_address() register.service_info() register.contact_name() REG_ACCOUNT = register.contact_phone_and_mail() register.open_products() register.save_corp() > assert register.get_corp_name()==company_name E AssertionError: assert '新增机构客户' == '彩虹信息有限公司' E - 彩虹信息有限公司 E + 新增机构客户 TestCase/01_web/test_01_admin_register.py:90: AssertionError ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:24:25,584 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:24:25,584 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:24:25,584 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:24:25,718 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:24:25,719 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:24:25,719 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:24:25,837 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:24:25,837 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:24:25,838 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:24:26,377 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:24:26,378 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:24:26,378 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:24:26,583 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:24:26,584 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:24:26,584 [web_registerpage.py:18] 点击 运营管理 INFO 2022-05-06 17:24:26,584 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '运营管理')]") INFO 2022-05-06 17:24:27,105 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '运营管理')]") INFO 2022-05-06 17:24:27,105 [web_registerpage.py:23] 点击 商旅事业部--机构客户 INFO 2022-05-06 17:24:27,106 [webpage.py:48] 查找元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") INFO 2022-05-06 17:24:28,972 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") INFO 2022-05-06 17:24:28,972 [web_registerpage.py:28] 点击 新增按钮 INFO 2022-05-06 17:24:28,972 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'新增 ')]/..") INFO 2022-05-06 17:24:29,797 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'新增 ')]/..") INFO 2022-05-06 17:24:29,798 [web_registerpage.py:39] 选中客户类型--tmc INFO 2022-05-06 17:24:29,798 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpType']") INFO 2022-05-06 17:24:30,374 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpType']") INFO 2022-05-06 17:24:30,374 [webpage.py:48] 查找元素:('xpath', "//*[contains(text(),'TMC')]") INFO 2022-05-06 17:24:30,940 [webpage.py:84] 点击元素:('xpath', "//*[contains(text(),'TMC')]") INFO 2022-05-06 17:24:30,940 [web_registerpage.py:51] 输入客户全称 INFO 2022-05-06 17:24:30,940 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='nameCn']") INFO 2022-05-06 17:24:31,047 [webpage.py:78] 输入文本:彩虹信息有限公司 INFO 2022-05-06 17:24:31,060 [web_registerpage.py:64] 输入会员号 INFO 2022-05-06 17:24:31,060 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='code']") INFO 2022-05-06 17:24:31,154 [webpage.py:78] 输入文本:TH3341357121 INFO 2022-05-06 17:24:31,164 [web_registerpage.py:110] 填写客户信息 INFO 2022-05-06 17:24:31,164 [web_registerpage.py:71] 选择客户规模 INFO 2022-05-06 17:24:31,165 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpSize']") INFO 2022-05-06 17:24:31,722 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpSize']") INFO 2022-05-06 17:24:31,722 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:32,277 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:32,277 [web_registerpage.py:77] 选择业务状态 INFO 2022-05-06 17:24:32,278 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpBizStatus']") INFO 2022-05-06 17:24:32,856 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpBizStatus']") INFO 2022-05-06 17:24:32,856 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:33,412 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:33,413 [web_registerpage.py:83] 选择所属行业 INFO 2022-05-06 17:24:33,413 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpIndustry']") INFO 2022-05-06 17:24:33,986 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpIndustry']") INFO 2022-05-06 17:24:33,987 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:34,537 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:34,537 [web_registerpage.py:89] 选择信用等级 INFO 2022-05-06 17:24:34,537 [webpage.py:48] 查找元素:('xpath', "//*[@dicttype='CorpCreditRating']") INFO 2022-05-06 17:24:35,109 [webpage.py:84] 点击元素:('xpath', "//*[@dicttype='CorpCreditRating']") INFO 2022-05-06 17:24:35,109 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:35,659 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:35,660 [web_registerpage.py:95] 选择省-市-区 INFO 2022-05-06 17:24:35,660 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='location']") INFO 2022-05-06 17:24:36,257 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='location']") INFO 2022-05-06 17:24:36,257 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') INFO 2022-05-06 17:24:36,822 [webpage.py:84] 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') INFO 2022-05-06 17:24:36,822 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') INFO 2022-05-06 17:24:37,378 [webpage.py:84] 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') INFO 2022-05-06 17:24:37,378 [webpage.py:48] 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') INFO 2022-05-06 17:24:37,930 [webpage.py:84] 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') INFO 2022-05-06 17:24:37,930 [web_registerpage.py:103] 输入具体地址 INFO 2022-05-06 17:24:37,931 [webpage.py:48] 查找元素:('xpath', "//input[@formcontrolname='address']") INFO 2022-05-06 17:24:38,037 [webpage.py:78] 输入文本:东莞街R座 INFO 2022-05-06 17:24:38,052 [web_registerpage.py:147] 填写服务信息 INFO 2022-05-06 17:24:38,052 [web_registerpage.py:119] 选择销售经理 INFO 2022-05-06 17:24:38,052 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:38,623 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:38,624 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') INFO 2022-05-06 17:24:39,194 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') INFO 2022-05-06 17:24:39,194 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:39,756 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:39,757 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') INFO 2022-05-06 17:24:40,318 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') INFO 2022-05-06 17:24:40,318 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:40,835 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") INFO 2022-05-06 17:24:40,835 [web_registerpage.py:126] 选择客服经理 INFO 2022-05-06 17:24:40,835 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:41,409 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:41,410 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:41,973 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:41,974 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:42,538 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:42,538 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:43,098 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:43,099 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:43,618 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") INFO 2022-05-06 17:24:43,619 [web_registerpage.py:133] 选择结算经理 INFO 2022-05-06 17:24:43,619 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:44,195 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:44,196 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:44,775 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:44,775 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:45,341 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:45,342 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:45,903 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:45,903 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:46,418 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") INFO 2022-05-06 17:24:46,418 [web_registerpage.py:140] 选择维护经理 INFO 2022-05-06 17:24:46,418 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:46,996 [webpage.py:84] 点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:46,996 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:47,558 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') INFO 2022-05-06 17:24:47,558 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:48,118 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:48,118 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:48,677 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:48,677 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:49,192 [webpage.py:97] js注入方式点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") INFO 2022-05-06 17:24:49,193 [web_registerpage.py:155] 输入联系人姓名 INFO 2022-05-06 17:24:49,193 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='contactName']") INFO 2022-05-06 17:24:49,713 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='contactName']") INFO 2022-05-06 17:24:49,803 [webpage.py:78] 输入文本:谢飞 INFO 2022-05-06 17:24:49,812 [web_registerpage.py:163] 输入联系人手机号和邮箱 INFO 2022-05-06 17:24:49,813 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='mobile']") INFO 2022-05-06 17:24:50,334 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='mobile']") INFO 2022-05-06 17:24:50,424 [webpage.py:78] 输入文本:11123002647 INFO 2022-05-06 17:24:50,424 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='email']") INFO 2022-05-06 17:24:50,941 [webpage.py:48] 查找元素:('xpath', "//*[@formcontrolname='email']") INFO 2022-05-06 17:24:51,048 [webpage.py:78] 输入文本:11123002647@tehang.com INFO 2022-05-06 17:24:51,073 [web_registerpage.py:176] 开通产品 INFO 2022-05-06 17:24:51,073 [webpage.py:48] 查找元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:51,592 [webpage.py:48] 查找元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:52,163 [webpage.py:84] 点击元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:52,163 [webpage.py:58] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item') INFO 2022-05-06 17:24:52,181 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:52,750 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') INFO 2022-05-06 17:24:52,751 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:53,308 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') INFO 2022-05-06 17:24:53,309 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:53,867 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') INFO 2022-05-06 17:24:53,867 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') INFO 2022-05-06 17:24:54,428 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') INFO 2022-05-06 17:24:54,428 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:54,988 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') INFO 2022-05-06 17:24:54,988 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:55,542 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') INFO 2022-05-06 17:24:55,543 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:56,094 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') INFO 2022-05-06 17:24:56,094 [webpage.py:48] 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:56,650 [webpage.py:84] 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') INFO 2022-05-06 17:24:56,650 [webpage.py:48] 查找元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:57,171 [webpage.py:97] js注入方式点击元素:('xpath', '//product-info[1]//nz-select[1]') INFO 2022-05-06 17:24:57,171 [web_registerpage.py:187] 提交机构数据 INFO 2022-05-06 17:24:57,171 [webpage.py:48] 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") INFO 2022-05-06 17:24:57,693 [webpage.py:48] 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") INFO 2022-05-06 17:24:58,274 [webpage.py:84] 点击元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") INFO 2022-05-06 17:25:04,276 [web_registerpage.py:199] 获取机构名称 INFO 2022-05-06 17:25:04,277 [webpage.py:48] 查找元素:('xpath', "//h1[@class='page-header__title ng-star-inserted']") INFO 2022-05-06 17:25:04,301 [webpage.py:89] 获取文本:新增机构客户 ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_registerpage.py:18 点击 运营管理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '运营管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '运营管理')]") [32mINFO [0m logger:web_registerpage.py:23 点击 商旅事业部--机构客户 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(@href,'/operation/tmc/corp')]") [32mINFO [0m logger:web_registerpage.py:28 点击 新增按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'新增 ')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'新增 ')]/..") [32mINFO [0m logger:web_registerpage.py:39 选中客户类型--tmc [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpType']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpType']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[contains(text(),'TMC')]") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[contains(text(),'TMC')]") [32mINFO [0m logger:web_registerpage.py:51 输入客户全称 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='nameCn']") [32mINFO [0m logger:webpage.py:78 输入文本:彩虹信息有限公司 [32mINFO [0m logger:web_registerpage.py:64 输入会员号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='code']") [32mINFO [0m logger:webpage.py:78 输入文本:TH3341357121 [32mINFO [0m logger:web_registerpage.py:110 填写客户信息 [32mINFO [0m logger:web_registerpage.py:71 选择客户规模 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpSize']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpSize']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:web_registerpage.py:77 选择业务状态 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpBizStatus']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpBizStatus']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:web_registerpage.py:83 选择所属行业 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpIndustry']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpIndustry']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:web_registerpage.py:89 选择信用等级 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@dicttype='CorpCreditRating']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@dicttype='CorpCreditRating']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:web_registerpage.py:95 选择省-市-区 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='location']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='location']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[1]/li[5]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[2]/li[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//body/div[2]/div[2]/div[1]/div[1]/ul[3]/li[2]') [32mINFO [0m logger:web_registerpage.py:103 输入具体地址 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@formcontrolname='address']") [32mINFO [0m logger:webpage.py:78 输入文本:东莞街R座 [32mINFO [0m logger:web_registerpage.py:147 填写服务信息 [32mINFO [0m logger:web_registerpage.py:119 选择销售经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[13]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[15]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='salesStaffs']") [32mINFO [0m logger:web_registerpage.py:126 选择客服经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='customerStaffs']") [32mINFO [0m logger:web_registerpage.py:133 选择结算经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='settlementStaffs']") [32mINFO [0m logger:web_registerpage.py:140 选择维护经理 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[14]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//*[@formcontrolname='maintainStaffs']") [32mINFO [0m logger:web_registerpage.py:155 输入联系人姓名 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='contactName']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='contactName']") [32mINFO [0m logger:webpage.py:78 输入文本:谢飞 [32mINFO [0m logger:web_registerpage.py:163 输入联系人手机号和邮箱 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='mobile']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='mobile']") [32mINFO [0m logger:webpage.py:78 输入文本:11123002647 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='email']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//*[@formcontrolname='email']") [32mINFO [0m logger:webpage.py:78 输入文本:11123002647@tehang.com [32mINFO [0m logger:web_registerpage.py:176 开通产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[2]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[3]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[4]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[5]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[6]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[7]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', '//cdk-virtual-scroll-viewport[1]/div[1]/nz-option-item[8]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//product-info[1]//nz-select[1]') [32mINFO [0m logger:web_registerpage.py:187 提交机构数据 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") [32mINFO [0m logger:webpage.py:84 点击元素:('xpath', "//button[@class='mx-lg px-lg ant-btn ant-btn-primary ant-btn-lg ng-star-inserted']") [32mINFO [0m logger:web_registerpage.py:199 获取机构名称 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//h1[@class='page-header__title ng-star-inserted']") [32mINFO [0m logger:webpage.py:89 获取文本:新增机构客户 | ||||
| Rerun | WEB-国内机票--预订 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_001::setup | 16.51 | |
|
drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.fixture(scope='module') def close_authorization(drivers): """WEB-关闭授权流程""" CustomerLogin(drivers).customer_login() setting = AuthorizationSettingPage(drivers) setting.to_authorization_setting() > setting.set_authorization_rule() TestCase/01_web/test_03_web_flight.py:22: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ PageObject/WebObject/web_authorizationsettingpage.py:24: in set_authorization_rule self.is_click(authorizationsetting["设置授权规则"]) page/webpage.py:82: in is_click self.find_element(locator).click() ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webelement.py:80: in click self._execute(Command.CLICK_ELEMENT) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webelement.py:633: in _execute return self._parent.execute(command, params) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py:321: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x10e78e240> response = {'status': 400, 'value': '{"value":{"error":"element click intercepted","message":"element click intercepted: Element ...fff6d968109 _pthread_start + 148\\n24 libsystem_pthread.dylib 0x00007fff6d963b8b thread_start + 15\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button _ngcontent-vry-c407="" nz-button="" nztype="primary" type="button" class="ant-btn ant-btn-primary">...</button> is not clickable at point (447, 332). Other element would receive the click: <div class="cs-loader">...</div> E (Session info: chrome=101.0.4951.54) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py:242: ElementClickInterceptedException ---------------------------- Captured stderr setup ----------------------------- INFO 2022-05-06 17:27:15,561 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:27:15,561 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:27:15,562 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:27:15,740 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:27:15,741 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:27:15,741 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:27:15,839 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:27:15,839 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:27:15,839 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:27:16,361 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:27:16,361 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:27:16,361 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:27:16,379 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:27:16,379 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:27:16,379 [web_systemmanagepage.py:90] 将国内机票测试桩全配置为返回成功结果 INFO 2022-05-06 17:27:16,379 [web_systemmanagepage.py:12] 到国内机票测试桩配置页面 INFO 2022-05-06 17:27:16,379 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:27:16,906 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:27:16,906 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:27:17,432 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:27:17,996 [webpage.py:97] js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:27:17,996 [webpage.py:58] 查找元素:('xpath', '//flight-stub-config//nz-select') INFO 2022-05-06 17:27:18,072 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:18,626 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:18,669 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,185 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,230 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,747 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:19,789 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,304 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,344 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,868 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:20,909 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:21,430 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:21,470 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:21,986 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:22,026 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:22,542 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:22,582 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,109 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,149 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,661 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:27:23,662 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:27:24,181 [web_systemmanagepage.py:85] 提交配置 INFO 2022-05-06 17:27:24,181 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:27:24,715 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:27:25,046 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:27:25,046 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:27:25,046 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:27:25,305 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:27:25,306 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:27:25,306 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:27:25,379 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:27:25,379 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:27:25,379 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:27:25,900 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:27:25,900 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:27:25,901 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:27:25,932 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:27:25,932 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:27:25,932 [web_authorizationsettingpage.py:15] 首页进入事前授权设置页面 INFO 2022-05-06 17:27:25,932 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:27:26,462 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:27:26,462 [webpage.py:48] 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:27:27,005 [webpage.py:97] js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:27:27,005 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:27:27,539 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:27:28,546 [web_authorizationsettingpage.py:23] 点击设置授权规则按钮 INFO 2022-05-06 17:27:28,546 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") ------------------------------ Captured log setup ------------------------------ [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_systemmanagepage.py:90 将国内机票测试桩全配置为返回成功结果 [32mINFO [0m logger:web_systemmanagepage.py:12 到国内机票测试桩配置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', '//flight-stub-config//nz-select') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:web_systemmanagepage.py:85 提交配置 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_authorizationsettingpage.py:15 首页进入事前授权设置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:web_authorizationsettingpage.py:23 点击设置授权规则按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") | ||||
| Rerun | WEB-国内机票--预订往返程机票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_011 | 37.51 | |
|
self = <test_03_web_flight.TestFlight object at 0x10e91acc0>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name="round_book") def test_011(self, drivers): """WEB-国内机票--预订往返程机票""" global ORDER_ID CustomerLogin(drivers).customer_login() book = BookFlightPage(drivers) > assert "支付完成" in book.book_round_trip(departure_city="深圳", arrive_city="北京") TestCase/01_web/test_03_web_flight.py:203: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ PageObject/WebObject/web_bookflightpage.py:259: in book_round_trip self.click_book() # 去程 PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10fafdc50>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:28:55,138 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:28:55,139 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:28:55,139 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:28:55,409 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:28:55,410 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:28:55,410 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:28:55,542 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:28:55,543 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:28:55,543 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:56,075 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:28:56,075 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:28:56,076 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:28:56,156 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:28:56,156 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:28:56,156 [web_bookflightpage.py:252] 预订往返机票 INFO 2022-05-06 17:28:56,156 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:28:56,416 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:28:57,179 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:28:58,180 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") INFO 2022-05-06 17:28:58,718 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") INFO 2022-05-06 17:28:58,718 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:28:58,719 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:28:58,719 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:28:58,731 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:28:58,844 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:28:58,844 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:59,395 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:28:59,395 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:28:59,396 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:28:59,396 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:28:59,402 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:28:59,483 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:28:59,483 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:00,001 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:29:00,001 [web_bookflightpage.py:102] 选中往返时间 INFO 2022-05-06 17:29:00,001 [web_bookflightpage.py:123] 生成随机日期 INFO 2022-05-06 17:29:00,002 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:29:00,002 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:29:00,002 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:29:00,080 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月24日']") INFO 2022-05-06 17:29:00,612 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月24日']") INFO 2022-05-06 17:29:00,678 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月26日']") INFO 2022-05-06 17:29:01,212 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月26日']") INFO 2022-05-06 17:29:01,213 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:29:01,213 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:29:01,739 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:29:01,739 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:29:01,739 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:252 预订往返机票 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'往返')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:102 选中往返时间 [32mINFO [0m logger:web_bookflightpage.py:123 生成随机日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月24日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月24日']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月26日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月26日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Rerun | WEB-国内机票--预订多人单程机票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_016 | 37.93 | |
|
self = <test_03_web_flight.TestFlight object at 0x10fa03f28>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name="persons") def test_016(self, drivers): """WEB-国内机票--预订多人单程机票""" > assert self.book_flight(drivers,check=False), "预订机票失败" TestCase/01_web/test_03_web_flight.py:257: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ TestCase/01_web/test_03_web_flight.py:43: in book_flight assert "支付完成" in book.book_one_way(departure_city, arrive_city, check) PageObject/WebObject/web_bookflightpage.py:247: in book_one_way self.place_order(departure_city, arrive_city, one_person) PageObject/WebObject/web_bookflightpage.py:237: in place_order self.click_book() PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10fac4b00>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:30:12,271 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:30:12,272 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:30:12,272 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:30:12,564 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:30:12,564 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:30:12,564 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:30:12,697 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:30:12,698 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:30:12,698 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:30:13,233 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:30:13,233 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:30:13,233 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:30:13,275 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:30:13,275 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:30:13,276 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:30:13,276 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:30:13,276 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:30:13,559 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:30:14,333 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:30:15,339 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:30:15,339 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:30:15,871 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:30:15,871 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:30:15,871 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:30:15,871 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:30:15,884 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:30:15,990 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:30:15,991 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:16,565 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:16,565 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:30:16,566 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:30:16,566 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:30:16,574 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:30:16,652 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:30:16,653 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:17,169 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:30:17,169 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:30:17,170 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:30:17,170 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:30:17,248 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:30:17,249 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:30:17,249 [web_bookflightpage.py:89] 日期:2022年5月16日 INFO 2022-05-06 17:30:17,249 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月16日']") INFO 2022-05-06 17:30:17,781 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月16日']") INFO 2022-05-06 17:30:18,786 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:30:18,787 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:30:19,313 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:30:19,314 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:30:19,314 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年5月16日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月16日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月16日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Rerun | WEB-授权--国内机票预订 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_003 | 37.88 | |
|
self = <test_04_web_flight_authorization.TestAuthorization object at 0x10e872eb8>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")>, flight_stub = None @pytest.mark.dependency(name="book_flight") def test_003(self, drivers, flight_stub): """WEB-授权--国内机票预订""" > assert self.book_flight(drivers) TestCase/01_web/test_04_web_flight_authorization.py:144: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ TestCase/01_web/test_04_web_flight_authorization.py:31: in book_flight assert "支付完成" in book.book_one_way(departure_city, arrive_city) PageObject/WebObject/web_bookflightpage.py:247: in book_one_way self.place_order(departure_city, arrive_city, one_person) PageObject/WebObject/web_bookflightpage.py:237: in place_order self.click_book() PageObject/WebObject/web_bookflightpage.py:154: in click_book self.js_click(book["预订"]) page/webpage.py:94: in js_click element = self.find_element(locator) page/webpage.py:51: in find_element EC.presence_of_element_located(args)), locator) page/webpage.py:44: in element_locator return func(cm.LOCATE_MODE[name], value) page/webpage.py:51: in <lambda> EC.presence_of_element_located(args)), locator) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.support.wait.WebDriverWait (session="46b458b22cd2b8955299e19ac233f453")> method = <selenium.webdriver.support.expected_conditions.presence_of_element_located object at 0x10e90dd68>, message = '' def until(self, method, message=''): """Calls the method provided with the driver as an argument until the \ return value is not False.""" screen = None stacktrace = None end_time = time.time() + self._timeout while True: try: value = method(self._driver) if value: return value except self._ignored_exceptions as exc: screen = getattr(exc, 'screen', None) stacktrace = getattr(exc, 'stacktrace', None) time.sleep(self._poll) if time.time() > end_time: break > raise TimeoutException(message, screen, stacktrace) E selenium.common.exceptions.TimeoutException: Message: ../../venv/lib/python3.7/site-packages/selenium/webdriver/support/wait.py:80: TimeoutException ---------------------------- Captured stderr setup ----------------------------- INFO 2022-05-06 17:31:43,144 [webpage.py:36] 打开网页:https://staging-tehang-system.teyixing.com/login INFO 2022-05-06 17:31:43,144 [web_adminloginpage.py:13] 输入账号 INFO 2022-05-06 17:31:43,144 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") INFO 2022-05-06 17:31:43,382 [webpage.py:78] 输入文本:15950582102 INFO 2022-05-06 17:31:43,383 [web_adminloginpage.py:18] 输入密码 INFO 2022-05-06 17:31:43,383 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:31:43,495 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:31:43,496 [web_adminloginpage.py:23] 点击登录 INFO 2022-05-06 17:31:43,496 [webpage.py:48] 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:31:44,035 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") INFO 2022-05-06 17:31:44,035 [web_adminloginpage.py:28] 获取标签栏文字 INFO 2022-05-06 17:31:44,035 [webpage.py:48] 查找元素:('xpath', '//layout-header//li[1]/a[1]') INFO 2022-05-06 17:31:44,060 [webpage.py:89] 获取文本:呼叫接入 INFO 2022-05-06 17:31:44,060 [adminlogin.py:27] 后台账号:15950582102登录成功 INFO 2022-05-06 17:31:44,060 [web_systemmanagepage.py:90] 将国内机票测试桩全配置为返回成功结果 INFO 2022-05-06 17:31:44,060 [web_systemmanagepage.py:12] 到国内机票测试桩配置页面 INFO 2022-05-06 17:31:44,060 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:31:44,579 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") INFO 2022-05-06 17:31:44,580 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:31:45,100 [webpage.py:48] 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:31:45,669 [webpage.py:97] js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") INFO 2022-05-06 17:31:45,670 [webpage.py:58] 查找元素:('xpath', '//flight-stub-config//nz-select') INFO 2022-05-06 17:31:45,731 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,254 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,300 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,818 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:46,862 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,376 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,418 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,933 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:47,974 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:48,491 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:48,534 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,052 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,091 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,605 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:49,646 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,165 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,209 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,724 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:50,776 [webpage.py:48] 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:51,288 [webpage.py:97] js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") INFO 2022-05-06 17:31:51,288 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:31:51,811 [web_systemmanagepage.py:85] 提交配置 INFO 2022-05-06 17:31:51,812 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '提交')]/..") INFO 2022-05-06 17:31:52,335 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..") ------------------------------ Captured log setup ------------------------------ [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-tehang-system.teyixing.com/login [32mINFO [0m logger:web_adminloginpage.py:13 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号或邮箱']") [32mINFO [0m logger:webpage.py:78 输入文本:15950582102 [32mINFO [0m logger:web_adminloginpage.py:18 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_adminloginpage.py:23 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@class='width-100 ant-btn ant-btn-primary ant-btn-lg']") [32mINFO [0m logger:web_adminloginpage.py:28 获取标签栏文字 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//layout-header//li[1]/a[1]') [32mINFO [0m logger:webpage.py:89 获取文本:呼叫接入 [32mINFO [0m logger:adminlogin.py:27 后台账号:15950582102登录成功 [32mINFO [0m logger:web_systemmanagepage.py:90 将国内机票测试桩全配置为返回成功结果 [32mINFO [0m logger:web_systemmanagepage.py:12 到国内机票测试桩配置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '系统管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[@href='/system-manage/flight-stub']") [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', '//flight-stub-config//nz-select') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//div[contains(text(),'返回成功结果')]/..") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:web_systemmanagepage.py:85 提交配置 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '提交')]/..") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(), '提交')]/..")----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:31:52,672 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:31:52,672 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:31:52,672 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:31:52,917 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:31:52,917 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:31:52,917 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:31:53,030 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:31:53,030 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:31:53,031 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:31:53,564 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:31:53,564 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:31:53,565 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:31:53,629 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:31:53,630 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:31:53,630 [web_bookflightpage.py:246] 预订单程机票 INFO 2022-05-06 17:31:53,630 [web_bookflightpage.py:230] 生成待支付订单 INFO 2022-05-06 17:31:53,630 [web_bookflightpage.py:17] 点击机票产品 INFO 2022-05-06 17:31:53,928 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:31:54,688 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") INFO 2022-05-06 17:31:55,694 [web_bookflightpage.py:24] 点击单程 INFO 2022-05-06 17:31:55,694 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:31:56,229 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") INFO 2022-05-06 17:31:56,229 [web_bookflightpage.py:57] 输入并选中出发城市 INFO 2022-05-06 17:31:56,229 [web_bookflightpage.py:44] 输入出发城市 INFO 2022-05-06 17:31:56,229 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:31:56,242 [web_bookflightpage.py:46] 输入内容:深圳 INFO 2022-05-06 17:31:56,364 [web_bookflightpage.py:52] 选中出发城市 INFO 2022-05-06 17:31:56,364 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:56,912 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:56,912 [web_bookflightpage.py:75] 输入并选中到达城市 INFO 2022-05-06 17:31:56,912 [web_bookflightpage.py:63] 输入到达城市 INFO 2022-05-06 17:31:56,912 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") INFO 2022-05-06 17:31:56,920 [web_bookflightpage.py:65] 输入内容:北京 INFO 2022-05-06 17:31:56,999 [web_bookflightpage.py:71] 选中到达城市 INFO 2022-05-06 17:31:56,999 [webpage.py:48] 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:57,520 [webpage.py:97] js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') INFO 2022-05-06 17:31:57,520 [web_bookflightpage.py:96] 选中日期 INFO 2022-05-06 17:31:57,521 [web_bookflightpage.py:81] 点击日期 INFO 2022-05-06 17:31:57,521 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") INFO 2022-05-06 17:31:57,600 [web_bookflightpage.py:86] 点击选中日期 INFO 2022-05-06 17:31:57,600 [web_bookflightpage.py:133] 获取日期 INFO 2022-05-06 17:31:57,600 [web_bookflightpage.py:89] 日期:2022年5月25日 INFO 2022-05-06 17:31:57,601 [webpage.py:48] 查找元素:('xpath', "//td[@title='2022年5月25日']") INFO 2022-05-06 17:31:58,134 [webpage.py:97] js注入方式点击元素:('xpath', "//td[@title='2022年5月25日']") INFO 2022-05-06 17:31:59,139 [web_bookflightpage.py:148] 点击查询 INFO 2022-05-06 17:31:59,139 [webpage.py:48] 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:31:59,665 [webpage.py:97] js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') INFO 2022-05-06 17:31:59,665 [web_bookflightpage.py:153] 点击预订 INFO 2022-05-06 17:31:59,665 [webpage.py:48] 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_bookflightpage.py:246 预订单程机票 [32mINFO [0m logger:web_bookflightpage.py:230 生成待支付订单 [32mINFO [0m logger:web_bookflightpage.py:17 点击机票产品 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(),'国内机票')]") [32mINFO [0m logger:web_bookflightpage.py:24 点击单程 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(),'单程')]/preceding-sibling::span[1]") [32mINFO [0m logger:web_bookflightpage.py:57 输入并选中出发城市 [32mINFO [0m logger:web_bookflightpage.py:44 输入出发城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:46 输入内容:深圳 [32mINFO [0m logger:web_bookflightpage.py:52 选中出发城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:75 输入并选中到达城市 [32mINFO [0m logger:web_bookflightpage.py:63 输入到达城市 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='支持中文/拼音检索 方向键选择']") [32mINFO [0m logger:web_bookflightpage.py:65 输入内容:北京 [32mINFO [0m logger:web_bookflightpage.py:71 选中到达城市 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//nz-list[1]/nz-spin[1]/div[1]/div[1]/nz-list-item[1]') [32mINFO [0m logger:web_bookflightpage.py:96 选中日期 [32mINFO [0m logger:web_bookflightpage.py:81 点击日期 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") [32mINFO [0m logger:web_bookflightpage.py:86 点击选中日期 [32mINFO [0m logger:web_bookflightpage.py:133 获取日期 [32mINFO [0m logger:web_bookflightpage.py:89 日期:2022年5月25日 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//td[@title='2022年5月25日']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//td[@title='2022年5月25日']") [32mINFO [0m logger:web_bookflightpage.py:148 点击查询 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//search-flight/div[1]/div[1]/nz-card[1]/div[2]/div[1]/button[1]') [32mINFO [0m logger:web_bookflightpage.py:153 点击预订 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//flights-list//flight-item[1]//flight-bunks-list[1]/flight-bunk-item[3]/nz-row[1]/nz-col[9]/button[1]') | ||||
| Rerun | WEB-关闭授权流程 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_023 | 4.81 | |
|
self = <test_04_web_flight_authorization.TestAuthorization object at 0x10fae57f0>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> def test_023(self, drivers): """WEB-关闭授权流程""" CustomerLogin(drivers).customer_login() setting = AuthorizationSettingPage(drivers) setting.to_authorization_setting() > setting.set_authorization_rule() TestCase/01_web/test_04_web_flight_authorization.py:353: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ PageObject/WebObject/web_authorizationsettingpage.py:24: in set_authorization_rule self.is_click(authorizationsetting["设置授权规则"]) page/webpage.py:82: in is_click self.find_element(locator).click() ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webelement.py:80: in click self._execute(Command.CLICK_ELEMENT) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webelement.py:633: in _execute return self._parent.execute(command, params) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py:321: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x10e78e240> response = {'status': 400, 'value': '{"value":{"error":"element click intercepted","message":"element click intercepted: Element ...fff6d968109 _pthread_start + 148\\n24 libsystem_pthread.dylib 0x00007fff6d963b8b thread_start + 15\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <button _ngcontent-epu-c407="" nz-button="" nztype="primary" type="button" class="ant-btn ant-btn-primary">...</button> is not clickable at point (447, 332). Other element would receive the click: <div class="cs-loader">...</div> E (Session info: chrome=101.0.4951.54) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py:242: ElementClickInterceptedException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:32:59,328 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:32:59,328 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:32:59,328 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:32:59,494 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:32:59,494 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:32:59,494 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:32:59,572 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:32:59,573 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:32:59,573 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:33:00,094 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:33:00,095 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:33:00,095 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:33:00,127 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:33:00,127 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:33:00,127 [web_authorizationsettingpage.py:15] 首页进入事前授权设置页面 INFO 2022-05-06 17:33:00,127 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:33:00,666 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") INFO 2022-05-06 17:33:00,666 [webpage.py:48] 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:33:01,209 [webpage.py:97] js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') INFO 2022-05-06 17:33:01,214 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:33:01,747 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") INFO 2022-05-06 17:33:02,757 [web_authorizationsettingpage.py:23] 点击设置授权规则按钮 INFO 2022-05-06 17:33:02,758 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_authorizationsettingpage.py:15 首页进入事前授权设置页面 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '商旅管理')]") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', '//sidebar/ul[1]/li[2]/div[1]') [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '事中授权设置')]") [32mINFO [0m logger:web_authorizationsettingpage.py:23 点击设置授权规则按钮 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(),'设置授权规则')]/..") | ||||
| Rerun | WEB-国际酒店--预订 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_001 | 4.08 | |
|
self = <test_08_web_ihotel.TestIntHotel object at 0x10e99eb70>, drivers = <selenium.webdriver.chrome.webdriver.WebDriver (session="46b458b22cd2b8955299e19ac233f453")> @pytest.mark.dependency(name='book') def test_001(self, drivers): """WEB-国际酒店--预订""" > assert self.book_int_hotel(drivers) TestCase/01_web/test_08_web_ihotel.py:61: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ TestCase/01_web/test_08_web_ihotel.py:18: in book_int_hotel assert int_hotel.book_int_hotel(), "预订酒店失败" PageObject/WebObject/web_ihotelpage.py:149: in book_int_hotel if not self.build_int_hotel_order(): PageObject/WebObject/web_ihotelpage.py:137: in build_int_hotel_order self.choose_date() PageObject/WebObject/web_ihotelpage.py:28: in choose_date self.check_in_date(locator1, date_result[1]) PageObject/WebObject/web_ihotelpage.py:34: in check_in_date eles[0].click() ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webelement.py:80: in click self._execute(Command.CLICK_ELEMENT) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webelement.py:633: in _execute return self._parent.execute(command, params) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/webdriver.py:321: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x10e78e240> response = {'status': 400, 'value': '{"value":{"error":"element click intercepted","message":"element click intercepted: Element ...fff6d968109 _pthread_start + 148\\n24 libsystem_pthread.dylib 0x00007fff6d963b8b thread_start + 15\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <input class="ng-tns-c76-17 ng-untouched ng-pristine ng-valid" placeholder="请选择日期" size="12"> is not clickable at point (750, 396). Other element would receive the click: <div class="cs-loader">...</div> E (Session info: chrome=101.0.4951.54) ../../venv/lib/python3.7/site-packages/selenium/webdriver/remote/errorhandler.py:242: ElementClickInterceptedException ----------------------------- Captured stderr call ----------------------------- INFO 2022-05-06 17:43:22,238 [webpage.py:36] 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login INFO 2022-05-06 17:43:22,238 [web_customerloginpage.py:23] 输入账号 INFO 2022-05-06 17:43:22,238 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入手机号']") INFO 2022-05-06 17:43:22,586 [webpage.py:78] 输入文本:12345671234 INFO 2022-05-06 17:43:22,586 [web_customerloginpage.py:38] 输入密码 INFO 2022-05-06 17:43:22,586 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='请输入密码']") INFO 2022-05-06 17:43:22,719 [webpage.py:78] 输入文本:a1111111 INFO 2022-05-06 17:43:22,719 [web_customerloginpage.py:43] 点击登录 INFO 2022-05-06 17:43:22,720 [webpage.py:48] 查找元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:43:23,246 [webpage.py:97] js注入方式点击元素:('xpath', "//button[@type='submit']") INFO 2022-05-06 17:43:23,246 [web_customerloginpage.py:58] 获取问候语 INFO 2022-05-06 17:43:23,246 [webpage.py:48] 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') INFO 2022-05-06 17:43:23,276 [webpage.py:89] 获取文本:你好!自动化一 INFO 2022-05-06 17:43:23,276 [customerlogin.py:27] 前台账号:12345671234登录成功 INFO 2022-05-06 17:43:23,276 [web_ihotelpage.py:148] 预订国际酒店 INFO 2022-05-06 17:43:23,276 [web_ihotelpage.py:134] 前台预订生成国际酒店订单 INFO 2022-05-06 17:43:23,276 [web_ihotelpage.py:15] 点击国际酒店 INFO 2022-05-06 17:43:23,277 [webpage.py:48] 查找元素:('xpath', "//a[contains(text(), '国际∙港澳台酒店')]") INFO 2022-05-06 17:43:23,802 [webpage.py:97] js注入方式点击元素:('xpath', "//a[contains(text(), '国际∙港澳台酒店')]") INFO 2022-05-06 17:43:23,803 [web_ihotelpage.py:19] 酒店城市选择 INFO 2022-05-06 17:43:23,803 [webpage.py:48] 查找元素:('xpath', "//input[@placeholder='支持中英文名检索']") INFO 2022-05-06 17:43:24,402 [webpage.py:97] js注入方式点击元素:('xpath', "//input[@placeholder='支持中英文名检索']") INFO 2022-05-06 17:43:24,402 [webpage.py:48] 查找元素:('xpath', "//span[contains(text(), '曼谷(Bangkok)')]") INFO 2022-05-06 17:43:24,933 [webpage.py:97] js注入方式点击元素:('xpath', "//span[contains(text(), '曼谷(Bangkok)')]") INFO 2022-05-06 17:43:24,933 [web_ihotelpage.py:24] 日期选择 INFO 2022-05-06 17:43:24,934 [web_ihotelpage.py:52] 生成随机日期 INFO 2022-05-06 17:43:24,934 [web_ihotelpage.py:62] 获取日期 INFO 2022-05-06 17:43:24,934 [web_ihotelpage.py:62] 获取日期 INFO 2022-05-06 17:43:24,934 [web_ihotelpage.py:32] 入住时间选择 INFO 2022-05-06 17:43:24,934 [webpage.py:58] 查找元素:('xpath', "//input[@placeholder='请选择日期']") ------------------------------ Captured log call ------------------------------- [32mINFO [0m logger:webpage.py:36 打开网页:https://staging-web-te-yi-xing.teyixing.com/passport/login [32mINFO [0m logger:web_customerloginpage.py:23 输入账号 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入手机号']") [32mINFO [0m logger:webpage.py:78 输入文本:12345671234 [32mINFO [0m logger:web_customerloginpage.py:38 输入密码 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='请输入密码']") [32mINFO [0m logger:webpage.py:78 输入文本:a1111111 [32mINFO [0m logger:web_customerloginpage.py:43 点击登录 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//button[@type='submit']") [32mINFO [0m logger:web_customerloginpage.py:58 获取问候语 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', '//header-user/nz-col[1]/nz-row[1]/nz-col[1]/span[1]/span[1]') [32mINFO [0m logger:webpage.py:89 获取文本:你好!自动化一 [32mINFO [0m logger:customerlogin.py:27 前台账号:12345671234登录成功 [32mINFO [0m logger:web_ihotelpage.py:148 预订国际酒店 [32mINFO [0m logger:web_ihotelpage.py:134 前台预订生成国际酒店订单 [32mINFO [0m logger:web_ihotelpage.py:15 点击国际酒店 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//a[contains(text(), '国际∙港澳台酒店')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//a[contains(text(), '国际∙港澳台酒店')]") [32mINFO [0m logger:web_ihotelpage.py:19 酒店城市选择 [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//input[@placeholder='支持中英文名检索']") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//input[@placeholder='支持中英文名检索']") [32mINFO [0m logger:webpage.py:48 查找元素:('xpath', "//span[contains(text(), '曼谷(Bangkok)')]") [32mINFO [0m logger:webpage.py:97 js注入方式点击元素:('xpath', "//span[contains(text(), '曼谷(Bangkok)')]") [32mINFO [0m logger:web_ihotelpage.py:24 日期选择 [32mINFO [0m logger:web_ihotelpage.py:52 生成随机日期 [32mINFO [0m logger:web_ihotelpage.py:62 获取日期 [32mINFO [0m logger:web_ihotelpage.py:62 获取日期 [32mINFO [0m logger:web_ihotelpage.py:32 入住时间选择 [32mINFO [0m logger:webpage.py:58 查找元素:('xpath', "//input[@placeholder='请选择日期']") | ||||
| Skipped | WEB-注册账号前台验证码登录后重置密码 | TestCase/01_web/test_01_admin_register.py::TestRegister::test_003::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_003 depends on register') | ||||
| Skipped | WEB-注册账号前台账号密码登录 | TestCase/01_web/test_01_admin_register.py::TestRegister::test_004::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_004 depends on set_password') | ||||
| Skipped | WEB-国内机票--出票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_002::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_002 depends on book_flight') | ||||
| Skipped | WEB-国内机票--提交改签申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_003::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_003 depends on ticket_confirm') | ||||
| Skipped | WEB-国内机票--改签报价取消 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_004::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_004 depends on change_apply') | ||||
| Skipped | WEB-国内机票--完成改签报价任务-提交改签申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_005_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_005_01 depends on change_offer') | ||||
| Skipped | WEB-国内机票--完成改签报价任务-完成改签报价任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_005_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_005_02 depends on change_offer1') | ||||
| Skipped | WEB-国内机票改签单--改签确认取消 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_006::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_006 depends on change_offer2') | ||||
| Skipped | WEB-国内机票改签单--完成改签确认出票-提交改签申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_007_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_007_01 depends on change_offer2') | ||||
| Skipped | WEB-国内机票改签单--完成改签确认出票-完成改签报价任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_007_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_007_02 depends on change_confirm1') | ||||
| Skipped | WEB-国内机票改签单--完成改签确认出票-完成改签确认任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_007_03::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_007_03 depends on change_confirm2') | ||||
| Skipped | WEB-国内机票--提交退票申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_008::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_008 depends on change_confirm3') | ||||
| Skipped | WEB-国内机票--退票取消 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_009::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_009 depends on return_apply') | ||||
| Skipped | WEB-国内机票--退票确认-提交退票申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_010_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_010_01 depends on return_apply') | ||||
| Skipped | WEB-国内机票--退票确认-完成退票确认任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_010_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_010_02 depends on return_confirm1') | ||||
| Skipped | WEB-国内机票--返程机票出票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_012::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_012 depends on round_book') | ||||
| Skipped | WEB-国内机票--去程退票-提交退票申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_013_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_013_01 depends on round_confirm') | ||||
| Skipped | WEB-国内机票--去程退票-完成退票任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_013_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_013_02 depends on go_return1') | ||||
| Skipped | WEB-国内机票--返程退票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_014_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_014_01 depends on round_confirm') | ||||
| Skipped | WEB-国内机票--返程退票 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_014_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_014_02 depends on back_return1') | ||||
| Skipped | WEB-国内机票--往返一起退票-提交退票申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_015_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_015_01 depends on round_confirm') | ||||
| Skipped | WEB-国内机票--往返一起退票-完成退票任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_015_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_015_02 depends on round_return') | ||||
| Skipped | WEB-国内机票--多人订单--一人退票-提交退票申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_017_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_017_01 depends on persons') | ||||
| Skipped | WEB-国内机票--多人订单--一人退票-完成退票任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_017_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_017_02 depends on persons_return1') | ||||
| Skipped | WEB-国内机票--多人订单--多次多人退票-提交退票申请 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_018_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_018_01 depends on persons') | ||||
| Skipped | WEB-国内机票--多人订单--多次多人退票-完成退票任务 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_018_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_018_02 depends on persons_return2') | ||||
| Skipped | WEB--国内机票--未支付订单取消 | TestCase/01_web/test_03_web_flight.py::TestFlight::test_019::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_019 depends on book_flight') | ||||
| Skipped | WEB-国内机票预订--一级授权通过 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_004::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_004 depends on book_flight') | ||||
| Skipped | WEB-授权--国内机票出票 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_005::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_005 depends on book_flight') | ||||
| Skipped | WEB-授权--国内机票提交改签申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_006::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_006 depends on ticket_confirm') | ||||
| Skipped | WEB-授权--国内机票完成改签报价任务 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_007::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_007 depends on change_apply') | ||||
| Skipped | WEB-国内机票改签--一级授权拒绝 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_008::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_008 depends on change_offer') | ||||
| Skipped | WEB-国内机票改签单--一级授权通过-提交改签申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_009_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_009_01 depends on change_offer') | ||||
| Skipped | WEB-国内机票改签单--一级授权通过-完成改签报价任务 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_009_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_009_02 depends on change_authorization1') | ||||
| Skipped | WEB-国内机票改签单--一级授权通过-一级授权通过 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_009_03::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_009_03 depends on change_authorization2') | ||||
| Skipped | WEB-国内机票改签单--完成改签确认出票 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_010::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_010 depends on change_authorization') | ||||
| Skipped | WEB-授权--国内机票退票申请提交 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_011::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_011 depends on change_confirm') | ||||
| Skipped | WEB-国内机票退票--一级授权拒绝 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_012::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_012 depends on return_apply') | ||||
| Skipped | WEB-国内机票退票单--一级授权通过-提交退票申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_013_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_013_01 depends on return_apply') | ||||
| Skipped | WEB-国内机票退票单--一级授权通过-一级授权通过 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_013_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_013_02 depends on return_authorization1') | ||||
| Skipped | WEB-授权--国内机票退票确认 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_014::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_014 depends on return_authorization') | ||||
| Skipped | WEB-国内机票预订--一级授权拒绝 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_015::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_015 depends on book_flight') | ||||
| Skipped | WEB-国内机票预订--二级授权通过 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_017::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_017 depends on book_flight') | ||||
| Skipped | WEB-国内机票改签--二级授权拒绝-提交改签申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_018_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_018_01 depends on change_offer') | ||||
| Skipped | WEB-国内机票改签--二级授权拒绝-完成改签报价任务 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_018_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_018_02 depends on two_level_change_refuse1') | ||||
| Skipped | WEB-国内机票改签--二级授权拒绝-审批拒绝 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_018_03::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_018_03 depends on two_level_change_refuse2') | ||||
| Skipped | WEB-国内机票改签--二级授权通过-提交改签申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_019_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_019_01 depends on two_level_change_refuse') | ||||
| Skipped | WEB-国内机票改签--二级授权通过-完成改签报价任务 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_019_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_019_02 depends on two_level_change1') | ||||
| Skipped | WEB-国内机票改签--二级授权通过-授权通过 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_019_03::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_019_03 depends on two_level_change2') | ||||
| Skipped | WEB-国内机票退票--二级授权拒绝-提交退票申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_020_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_020_01 depends on return_apply') | ||||
| Skipped | WEB-国内机票退票--二级授权拒绝-授权拒绝 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_020_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_020_02 depends on two_level_return_refuse1') | ||||
| Skipped | WEB-国内机票退票--二级授权通过-提交退票申请 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_021_01::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_021_01 depends on two_level_return_refuse') | ||||
| Skipped | WEB-国内机票退票--二级授权通过-授权通过 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_021_02::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_021_02 depends on two_level_return_pass') | ||||
| Skipped | WEB-国内机票预订--二级授权拒绝 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_022::setup | 0.00 | |
|
('/Users/mac/PycharmProjects/test-uitest/venv/lib/python3.7/site-packages/pytest_dependency.py', 103, 'Skipped: test_022 depends on book_flight') | ||||
| Passed | WEB-测试账号验证码登录 | TestCase/01_web/test_01_admin_register.py::TestRegister::test_001 | 36.71 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-设置只需一级审批 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_001 | 5.89 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-提交差旅计划 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_002 | 7.00 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-一级审批通过 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_003 | 9.89 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-一级审批拒绝 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_004 | 13.55 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-设置二级审批人 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_005 | 6.47 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-二级审批通过 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_006 | 19.63 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-二级审批拒绝 | TestCase/01_web/test_02_web_travel_approve.py::TestTravelApprove::test_007 | 36.10 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-开启授权流程 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_001 | 6.14 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-设置只需一级授权 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_002 | 7.03 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-设置二级授权人 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_016 | 8.07 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-关闭授权流程 | TestCase/01_web/test_04_web_flight_authorization.py::TestAuthorization::test_023 | 6.45 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--预订 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_001 | 19.14 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--完成订房 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_002 | 6.31 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--全部退订-提交退订申请 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_003_01 | 6.23 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--全部退订-完成退订任务 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_003_02 | 23.45 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--部分退订-预定酒店 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_004_01 | 31.50 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--部分退订-提交退订申请 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_004_02 | 6.07 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--部分退订-完成退订任务 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_004_03 | 7.87 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国内酒店--订单取消 | TestCase/01_web/test_05_web_domestic_hotel.py::TestDomesticHotel::test_005 | 25.68 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-预订火车票 | TestCase/01_web/test_06_web_train.py::TestTrain::test_001 | 0.00 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-火车票改签 | TestCase/01_web/test_06_web_train.py::TestTrain::test_002 | 0.00 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-火车票退票 | TestCase/01_web/test_06_web_train.py::TestTrain::test_003 | 0.00 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--前台预订 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_001 | 13.67 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--提交出票申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_002 | 10.34 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成出票确认任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_003 | 9.13 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--提交改签申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_004 | 5.96 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成改签申请取消任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_005 | 8.62 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成改签申请-提交改签申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_006_01 | 5.81 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成改签申请任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_006_02 | 11.11 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成改签确认任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_007 | 13.19 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--提交退票申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_008 | 4.25 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成退票申请取消任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_009 | 8.53 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--退票确认取消-提交退票申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_010_01 | 4.11 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--退票确认取消-完成退票申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_010_02 | 10.24 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成退票确认取消任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_011 | 7.09 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--退票确认-提交退票申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_012_01 | 4.31 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--退票确认-完成退票申请 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_012_02 | 10.29 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成退票确认任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_012_03 | 6.87 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--预订取消 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_013 | 14.91 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际机票--完成预订取消任务 | TestCase/01_web/test_07_web_iflight.py::TestIntFlight::test_014 | 7.94 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--预订 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_001 | 16.54 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--完成订房 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_002 | 17.25 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--全部退订-提交退订申请 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_003_01 | 5.53 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--全部退订-完成退订任务 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_003_02 | 3.44 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--部分退订-预订酒店 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_004_01 | 30.87 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--部分退订-提交退订申请 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_004_02 | 5.86 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--部分退订-完成退订任务 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_004_03 | 5.13 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-国际酒店--取消订单 | TestCase/01_web/test_08_web_ihotel.py::TestIntHotel::test_005 | 18.02 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--差旅政策页面校验 | TestCase/01_web/test_09_web_management.py::TestManagement::test_01 | 2.94 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--预订设置页面校验 | TestCase/01_web/test_09_web_management.py::TestManagement::test_02 | 3.33 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--新增差旅政策页面校验 | TestCase/01_web/test_09_web_management.py::TestManagement::test_03 | 0.89 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--事前审批配置页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_04 | 0.62 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--新增审批流程页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_05 | 0.63 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--事中授权页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_06 | 1.85 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--新增授权流程页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_07 | 0.65 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--事后知会设置页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_08 | 1.95 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--新增知会流程页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_09 | 0.64 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--设置知会规则页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_10 | 1.76 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--企业项目页面(包括新增和关联) | TestCase/01_web/test_09_web_management.py::TestManagement::test_11 | 3.66 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--绿色通道页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_12 | 1.67 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅管理--城市等级页面 | TestCase/01_web/test_09_web_management.py::TestManagement::test_13 | 0.68 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅分析--综合查询 | TestCase/01_web/test_10_web_travel_analysis.py::TestTravelAnalysis::test_01 | 5.93 | |
|
通过的用例未捕获日志输出. | ||||
| Passed | WEB-商旅分析--报表分析 | TestCase/01_web/test_10_web_travel_analysis.py::TestTravelAnalysis::test_02 | 4.47 | |
|
通过的用例未捕获日志输出. | ||||